package com.baili.dao.operater;

import java.util.List;
import java.util.Map;

import com.baili.dto.Call;
import com.baili.dto.Check;
import com.baili.dto.ProductOrder;

/** 
 * @author iceX
 * @version 创建时间：2016年3月31日 下午3:02:40 
 * @Name: InspectorDao.java
 */
public interface OperateDao {

	/**
	 * 操作人员-现场呼叫-呼叫记录
	 * @return
	 */
	public List getCallLog(ProductOrder productOrder);

	/**
	 * 操作人员-现场呼叫-呼叫记录(详情)
	 * @return
	 */
	public List getCallLogById(int id);

	/**
	 * 操作人员-现场呼叫-查询呼叫主题
	 * @return
	 */
	public List getEventType();
	
	/**
	 * 操作人员-现场呼叫-提交事件
	 * @return
	 */
	public void insertEventType(Call call);
	
	/**
	 * 操作人员-现场呼叫-呼叫设置更新状态
	 * @return
	 */
	public void updateState(int parseInt, int parseInt2);
	
	/**
	 * 操作人员-生产任务-预警
	 * @param scheduleNo 
	 * @return
	 */
	public List<Map<String, Object>> getWarning(ProductOrder productOrder);
	/**
	 * 操作人员-生产任务-未完成或未完成
	 * @return
	 */
	public List getFinishWorkYOrN(ProductOrder productOrder) ;
	public List getNofinishwork();
	/**
	 * 操作人员-生产任务-未完成-轮次
	 * @param request
	 * @param response
	 * @return
	 */
	public List getRoundDetails(ProductOrder productOrder);
	public List getroundDetails(ProductOrder productOrder);
	/**
	 * 操作人员-生产任务-未完成-轮次
	 * @param request
	 * @param response
	 * @return
	 */
	public List getroundList(ProductOrder productOrder);
	
	public List getRoundListToSeeDetails(ProductOrder productOrder);
	public List getRoundListToSee(ProductOrder productOrder);
	/**
	 * 操作人员-生产任务-未完成-轮次-查看领料单
	 * @param request
	 * @param response
	 * @return
	 */
	public List getpicklists(ProductOrder productOrder);
	/**
	 * 操作人员-生产任务-未完成-轮次-查看资料
	 * @param request
	 * @param response
	 * @return
	 */
	public List getdataList(ProductOrder productOrder);
	/**
	 * 操作人员-生产任务-质检-查看(已完成)
	 * @param request
	 * @param response
	 * @return
	 */
	public List getCheckSee(ProductOrder productOrder);
	public List getCheckSeeDefectToPicVdo(ProductOrder productOrder);
	/**
	 * 操作人员-生产任务-质检-查看(未完成-有缺陷)
	 * @param request
	 * @param response
	 * @return
	 */
	public List getCheckSeeDefect(ProductOrder productOrder);
	public List getallfinishList(ProductOrder productOrder);
	/**
	 * 操作人员-生产任务-已完成列表-轮次
	 * @param request
	 * @param response
	 * @return
	 */
	public List getallfinishroundDetails(ProductOrder productOrder);
	/**
	 * 操作人员-生产任务-已完成-轮次-查看领料单
	 * @param request
	 * @param response
	 * @return
	 */
	public List getallfinishpicklists(ProductOrder productOrder);
	
	/**
	 * 操作人员-生产任务-已完成-轮次-查看资料
	 * @param request
	 * @param response
	 * @return
	 */
	public List getallfinishdataList(ProductOrder productOrder);
	/**
	 * 操作人员-生产任务-已完成-轮次-上
	 * @param request
	 * @param response
	 * @return
	 */ 
	public List getallfinishroundList(ProductOrder productOrder);
	/**
	 * 操作人员-生产任务-已完成-轮次-下
	 * @param request
	 * @param response
	 * @return
	 */ 
	public List getallfinishDetails(ProductOrder productOrder);
	
	public void updateOperationState(ProductOrder productOrder);
	public void insertCheck(Check check);
	
	public void deleteCheck(Check check);
	
	public List<Map<String,Object>> getProcessNameByProductTeam(ProductOrder productOrder);
	/**
	 * 操作人员-统计分析-质检统计
	 * @param request
	 * @param response
	 * @return
	 */ 
	public List<Map<String, Object>> checkedAnalysis(ProductOrder productOrder);
	
	
	public List getFedAnalysis(ProductOrder productOrder);
	
	public List getCallTypeUser(Call call) ;
	public List getCallTypeByUser(Call call) ;
	
	public List insertCallTypeUser(Call call);
	
	public List deleteCallTypeUser(Call call) ;
	public List getReferenceMaterial(String finishedProductName);
	public List getProductTeamsByLevel(int teamLevel);
	public void updateFedAnalysis(Integer id,Integer feed,Integer checkProcess) ;
	
	/**
	 * 使用开料组id获取所有属于该开料组的制帮小组
	 * @param productOrder
	 * @return
	 */
	public List getProductTeamsByProductTeamId(ProductOrder productOrder);
}
